package com.wx.api.wxapi.impl;

import com.alibaba.fastjson2.JSONObject;
import com.wx.api.wxapi.IWxApi;
import com.wx.common.http.HttpClientUtils;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;

@Service("wxApi")
public class WxApiServiceImpl implements IWxApi {
    /**
     *
     */
    @Value("${wx.appId}")
    public String appId;
    /**
     *
     */
    @Value("${wx.appSecret}")
    public String appSecret;
    /**
     * API V3密钥
     */
    @Value("${wx.apiV3Key}")
    public String apiV3Key;
    /**
     * 签名固定字段 微信强制要求
     */
    @Value("${wx.signPackage}")
    public String signPackage;
    /**
     * 商户证书系列号
     */
    @Value("${wx.merchantSerialNumber}")
    public String merchantSerialNumber;
    /**
     * 你的商户私钥
     */
    public String privateKey;

    @Value("${wxUrl.notifyUrl}")
    public String notifyUrl;

    @Value("${wxUrl.getOpenIdUrl}")
    public String getOpenIdUrl;


    @Override
    public JSONObject getCode() {
        return null;
    }

    @Override
    public JSONObject getUserOpenId(String code) {
        String param = "?appid=" + appId + "&secret=" +
                appSecret + "&grant_type=authorization_code" + "&js_code=" + code;
        String url = getOpenIdUrl + param;
        return HttpClientUtils.doGet(url);
    }
}
